$(document).ready(function(){
	cw.common.setStyle();
	$('#subImg').bind('click',subButton);
	cw.common.getUserSession(loadRoleTree,true);
	validate();
})

//角色树
var treeRole;
function loadRoleTree(){
	treeRole = new dTree('treeRole',cw.common.path+'/common/dtree/images');
	treeRole.add(1, -1, '角色列表');
	$.post(cw.common.path+'/json',
		{
			action : 'QUERY_T_SYS_ROLE_ACTION'
		}, function(data){
			if (data.success) {
				var length = data.root.T_SYS_ROLE.rs.length;
				if(length > 0){
					for(var i=0;i<length;i++) {
						var obj=data.root.T_SYS_ROLE.rs[i];
						treeRole.add(obj.ROLE_ID, 1, 'ROLE_ID', obj.ROLE_ID, obj.ROLE_NAME, 
							null, null, null, null, null, null, null, null);
					}
					$('#tree_role').html(treeRole.toString());
				//	$('#ROLE_ID_1000000').attr('checked',true);
				}
				else{
					$('#tree_role').html('暂无角色信息');
				}
			} else {
				alert(data.errors.errmsg);
			}
		}, 'json');
}

function subFrm(){
	var options = {
	    dataType: 'json',
    	iframe:	false,
	    success: function(data) {
	    	if(data.success){
	    		$('#subImg').bind('click',subButton);
	    		alert('已添加新帐号'+$('#LOGIN_NAME').val());
	      		window.location.href="userList.html";
	      	}else{
	      		alert(data.errors.errmsg);
	      	}
	   	}
	};
	$.ajaxSetup({contentType:'application/x-www-form-urlencoded;charset=utf-8'});
    $('#frm').ajaxSubmit(options);
}

function subButton(){
	$('#subImg').unbind('click',subButton);
	return jQuery.formValidator.pageIsValid(1);
}

function validate(){
	$.formValidator.initConfig({formid:"frm",onerror:function(msg){$('#subImg').bind('click',subButton);alert(msg);},onsuccess:function(){subFrm();return false;}});
	
	$("#LOGIN_NAME").formValidator({onshow:"请输入用户名",oncorrect:"该用户名可以使用",onfocus:"用户名由字母和数字组成"}).inputValidator({min:1,onerror:"请输入用户名"}).inputValidator({max:32,onerror:"用户名过长，长度不超过32个字符"})
	.functionValidator({
		fun:function (str,elem){
			var a = !str.match("^([a-zA-Z]|[0-9])+$");
			if(a) return false;
			return true;
		}, onerror: "用户名格式错误，用户名由字母和数字组成"
	})
	.ajaxValidator({
		url : cw.common.path + "/json?action=CHECK_USER_BY_NAME_ACTION",
		type : 'get',
		datatype : "json",
		success : function(data){
			if(data.success){
	            if(data.root.T_USER != undefined  && data.root.T_USER.rs[0] != null && data.root.T_USER.rs[0] != "" && data.root.T_USER.rs[0] != undefined){
	            	return false;
	            }
	            else{
	            	return true;
	            }
			}else{
				alert('出错了：'+ data.errors.errmsg);
				return false;
			}
		},
		buttons: $("#subImg"),
		error: function(){alert("服务器没有返回数据，可能服务器忙，请重试");},
		onerror : "已存在该用户的帐号信息!",
		onwait : "正在对用户进行校验，请稍候..."
	});
	$("#USER_NAME").formValidator({onshow:"请输入用户姓名",oncorrect:"正确",onfocus:"姓名由英文或简体中文组成"})
	.inputValidator({min:1,onerror:"用户姓名必填"})
	.inputValidator({min:4,onerror:"用户姓名不少于4字符"})
	.inputValidator({max:16,onerror:"真实姓名中文不超过8个字，英文不超过16个字符"})
	.functionValidator({
		fun:function (str,elem){
			str = $.trim(str);
			if(str.length == 0) return "用户姓名必填";
			var a = !str.match('^([a-zA-Z]|[\\u4E00-\\u9FA5\\uF900-\\uFA2D])+$');
			if(a) return "姓名4-16个字符，英文或简体中文组成";
			return true;
		}, onerror: "用户姓名错误"
	});
	$("#PHONE").formValidator({empty:true,onshow:"请输入联系号码",oncorrect:"正确",onfocus:"号码可以是手机或者固话"}).inputValidator({min:1,onerror:"请输入联系号码",max:20,onerror:"字数不超过20个字符"});
	$("#EMAIL").formValidator({empty:true,onshow:"请输入有效的邮箱地址",oncorrect:"正确",onfocus:"请输入有效的E-mail地址"})
	.inputValidator({min:1,onerror:"请输入邮箱地址"}).inputValidator({max:60,onerror:"邮箱名称过长"})
	.functionValidator({fun:isValidEmail,onerror:"电子信箱格式不正确，请按正确的格式填写!正确格式：xxx@163.com"});
	$("#REMARK").formValidator({empty:true,onshow:"请输入用户备注",oncorrect:"正确",onfocus:"请输入用户备注信息"}).inputValidator({max:100,onerror:"用户备注信息中文不超过50个字，英文不超过100个字符"});
	$("#tree_role").formValidator({onshow:"请分配管理员角色",oncorrect:"正确",onfocus:"请分配管理员角色"})
	.functionValidator({
		fun:function (str,elem){
			if(getCheckedNum('ROLE_ID')==0){
				return false;
			}
			return true;
		}, onerror: "新用户未分配任何角色"
	})
}

